
(defun filt (x a b)
	(if (atom x)
		(if (eql x a)
			b
			x
		)
		(s x a b)
	)
)

(defun s (l a b)
	(map 'list (lambda (x) (filt x a b)) l)
)

(setq l '(1 2 3 (3 2 3) 4 3 2 1))

(print (s l 2 20))

;; SINH:
(defun fak (x)
	(if (eql x 1)
		1
		(* x (fak (- x 1)))
	)
)

(defun pow (x n)
	(if (eql n 1)
		x
		(* x (pow x (- n 1)))
	)
)

(defun sinhel (x i) 
	(/ (pow x i) (fak i))
)

(defun sinh (x i)
	(if (eql i 1)
		x
		(+ (sinhel x i) (mysinh x (- i 2)))
	)
)

(format t "Result: ~5,3f" (mysinh 2 121))
